The following description is provided to assist the understanding of the reader. None of the information provided or references cited is admitted to be prior art.
Non-volatile storage devices are used in a variety of applications ranging from simple consumer electronics to complex enterprise based computing systems. At least some non-volatile storage devices are configured to communicate with a host device via a storage controller. The storage controller executes firmware level code to operate, manage, and otherwise control the non-volatile storage device in facilitating the communication between the host device and the non-volatile storage device. The non-volatile memory express (NVMe) standard is an example of an interface that outlines a communication protocol between the host device and the non-volatile storage device via the storage controller. One of the features of the NVMe standard allows multiple firmware revisions to be simultaneously installed on the non-volatile storage device. However, the storage controller is limited in the way it manages and operates the multiple firmware revisions.